Managing Bandwidth Allocation to a Plurality of Subscribers Utilizing Opportunistic Bandwidth

ABSTRACT

In a resource manager, a method for managing bandwidth allocation to a plurality of subscribers utilizing opportunistic bandwidth including tracking a bandwidth utilization on multiple links, receiving a request for services along one of the links, and selecting a video data rate on the one of the links that meets available bandwidth.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a divisional of copending U.S. Utility application entitled, “Optimizing Bandwidth Utilization to a Subscriber Premises,” having Ser. No. 11/162,345, filed Sep. 7, 2005, which is entirely incorporated herein by reference.

TECHNICAL FIELD

The present invention relates to IP television and bandwidth management. More particularly, the present invention relates to individualizing the video data rate for a particular television.

BACKGROUND OF THE INVENTION

The advent of higher-bandwidth Internet services over existing communication networks has created an alternative method to deliver video programming. However, Internet Protocol, or IP, based digital video distribution is capable of utilizing network infrastructures other than those used by the traditional Internet services. IP video or IP television (IPTV) is the transmission of television signals (digital video and audio) through data networks such as, for example, DSL, cable modem or wireless broadband.

Delivering video over IP is bandwidth intensive and, therefore, bandwidth to the home is a precious commodity due to the fact that broadband-quality video consumes a significant portion of a communication channel's data transmission capacity. IPTV services may be on a subscription basis paid for by the recipient for access to the network and requires an IP set-top box and an associated display device or TV within a subscriber premises, rather than a conventional cable television (CATV) set-top box. In order to retain customers, network access providers such as telephone companies may wish to provide IPTV over their existing infrastructure. This requires that they evolve their network.

When accessing a network such as the Internet, for example, a subscriber might connect through a high speed connection, such as Digital Subscriber Link, or DSL, that uses the same pair of copper wires as a regular telephone line. The pair of copper wires is capable of carrying a much greater bandwidth than what is typically demanded for voice. To use DSL, there is a DSL modem or transceiver at the subscriber's location. There is also a DSL Access Multiplexer (DSLAM) to receive subscriber connections at the location of the DSL service provider such as an Internet service provider or a telephone company. The DSLAM aggregates the subscriber connections onto a single high-capacity connection to the Internet. One way for a telephone company to provide DSL service is to have a DSLAM at its central office.

Also, many network operators oversubscribe the bandwidth on their network to maximize the return on investment in their network infrastructure. Oversubscribing bandwidth means the bandwidth a user subscribes to is not always available to them. Subscribers compete for available bandwidth and they receive more or less bandwidth depending on the amount of traffic from other subscribers on the network at any given time. When a network becomes increasingly congested, packets are dropped. Therefore, audio and video becomes corrupt due to packets being dropped when a link to a subscriber is oversubscribed.

Because there is never enough bandwidth, the traditional solution of the DSL service providers is to increase transmission line throughput, such as with equipment of significant cost, or reduce the bit-rate per channel for better encoding. However, services delivered to the home must be perceived to be of high quality and, thus, bit-rate reduction may not always be a suitable alternative. Therefore, in order to improve their video system, there is a need to intelligently manage and optimize the data rate for video services across a broadband connection such as DSL. In particular, individualized link bandwidth allocation is needed to manage and optimize bandwidth.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of an xDSL communications network having a plurality of subscriber premises in communications with a central office over a local loop.

FIG. 2 illustrates a screen-shot of a graphical user interface screen depicting a selectable item.

FIG. 3 illustrates one embodiment of implementing individualized bandwidth allocation according to the present invention.

FIG. 4 illustrates a video system capable of providing discrete resolutions and data rates according to one embodiment of the present invention.

FIG. 5 illustrates one embodiment of managed resources to a client according to one embodiment of the present invention.

FIG. 6 illustrates a process for optimizing bandwidth utilization when commencing a video session according to one embodiment of the present invention.

DETAILED DESCRIPTION

The present invention will be described more fully hereinafter with reference to the accompanying drawings in which like numerals represent like elements throughout the several figures, and in which an exemplary embodiment of the invention is shown. This invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein; rather, the embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. The present invention is described more fully hereinbelow.

Throughout this specification, the transmission of a television signal, television program, or video program (e.g., a movie), are used interchangeably and refers to the transmission of a corresponding set of one or more streams that make up the television program or movie, such as a compressed digital video stream, a compressed digital audio stream, associated data streams, and/or an associated media stream.

Throughout this specification, the amount of bandwidth consumption refers to the amount of consumption in a transmission channel's capacity. Data rate and bit-rate have analogous meaning and refer to the amount of channel capacity consumption or bandwidth consumption.

FIG. 1 illustrates a broadband communications network 10, such as an xDSL communication network, having at least one subscriber premises 12 which communicates with a central office 14 through a local loop 16. Other types of broadband networks which support IP-based digital distribution such as fiber-to-the-home (FTTH) are within the scope of the present invention. The communications network 10 can provide xDSL communications in the xDSL band frequency while conventional communications take place over the voice band frequency. The local loop 16 includes the communication network of the plain old telephone system (POTS). The subscriber premise 12 includes at least one or more home communications terminals with IP/xDSL capability that may be commonly referred to as an entertainment server or a set-top box (STB) 20. FIG. 1 depicts only one subscriber premises 12 having only one STB 20 as a matter of convenience. Each STB 20 in each subscriber premises may be coupled to or integrated into a corresponding display device such as a standard or high definition television which is capable of xDSL communication with an internal or external xDSL modem.

The subscriber premises 10 may also include voice equipment 24 such as conventional telephones and fax machines that communicate using the voice channel. In one embodiment, each STB 20, voice equipment 24, and personal computer 28 is coupled to a splitter 26 which separates communications over the local loop 16 into a digital channel and a voice channel. Preferably, transmission priority is given to media or video data destined to be processed by the STB 20 rather than data destined to be processed by the personal computer 28. Also, real-time service to one device requiring real-time media processing should have priority over a non-real-time service to another device.

The central office 14 includes a splitter 30 to direct communications over the voice channel to the public switched telephone network (PSTN) 34 and to direct digital communications to a broadband network 36. A DSLAM 40, usually located at the central office 14, aggregates the incoming digital signals from the subscribers and de-multiplexes them. The DSLAM 40 transfers the aggregated communications to the public broadband network 36. However, the DSLAM 40 may be distributed into the public network 36.

At the subscriber premises 12, each STB 20 is coupled to a display device such as a standard definition (SD) or high definition (HD) television with a respective characteristic or set of characteristics. For a given digital video coding specification or video coding algorithm, the perceived picture fidelity, often referred to as perceived video quality, depends on several factors. A first set of factors influencing perceived picture quality is the inherent characteristics exhibited in the information of the video itself. Video being a sequence of pictures, such as those imaged by a video camera or scanned from film, exhibits information complexity that depends on the content of the imaged scene, including the motion of objects in the scene, the “speed of” and the “amount of” magnification exercised on the scene through the video or film generation process, the scene's lighting, and the spatial properties of the imaged objects in the scene, such as their respective textures, colors and shapes. Included in the inherent video characteristics is the native scan format of the video's pictures: either progressive or interlaced.

A second set of factors attributing to the perceived picture fidelity of video is a result of how the sequence of digitized pictures is compressed while exercising the video coding algorithm. The perceived picture quality is dependent on the spatial picture resolution and picture rate used in encoding the pictures, and the amount of compression effected by the video coding algorithm. In particular, the second set of factors' influence on perceived picture quality is directly correlated to the bit-rate of the compressed video. In one embodiment of the invention, the compression characteristics of the video include whether the video is compressed as a sequence of pictures in progressive scan format or interlaced scan format.

A third set of factors influencing the perceived video quality concerns the characteristics of the display device or television in which the video is displayed. A display device's characteristics include its picture rendering capabilities, the physical dimension characteristics of its screen, and its type of display. Picture rendering capabilities include the native spatial screen resolution, often called the native display resolution, in which the display device processes the information in the pictures to be displayed and emits or outputs them as visible light; the “displayed or output picture rate;” the aspect ratio of the physical screen or visual spatial area (e.g., 16:9 or 4:3), and whether the sequence of pictures are displayed in progressive or interlaced picture format.

A display device's picture rendering capabilities includes the real-time processing of the sequence of input pictures, for example, as provided real-time by STB 20 in decompressed form through a standardized physical interface that couples STB 20 and the display device, to systematically convert the sequence of input pictures to visible light according to its display characteristics. That is, the display device processes the sequence of input pictures to convert them spatially and temporally to its internal native display resolution, its output picture rate, its aspect ratio, and if necessary, to its native displayed picture format.

The physical screen is the surface where the information of each picture is effected into light for viewing by a subscriber. The physical screen's dimension and its shape (e.g., flat or elliptical) influences the suitable viewer's position and distance from the screen.

The type of display is characterized by one of the several technologies employed in its design for emitting the pictures corresponding to video or television signals as visible light. Display types include a cathode-ray tube (CRT) device, a plasma technology display, a liquid-crystal display (LCD), a digital light projection (DLP) display, liquid crystal on silicon (LCOS) technology, a display device based on nanotubes technology, a rear or front projection device based on internal processing of light, a display device incorporating optical processing mechanisms, or any combination of these technologies.

A fourth set of factors influencing the perceived picture quality of video concerns the characteristics (of STB 20). Video is compressed according to the syntax and semantics of a particular video coding specification and transmitted to STB 20. Without any limitation to the invention, examples of video coding specifications include: “ISO/IEC 13818-2:2000(E), Information technology—Generic coding of moving pictures and associated audio information: Video (second edition),” and “ISO/IEC 14496-10 AVC: Advanced video coding for generic audiovisual services (2003).”

Compressed pictures are decompressed by a video decompression engine or video decoder in STB 20 to counter the effects of the video compression algorithm on the compressed sequence of pictures and to reconstruct the pictures into displayable form. One or more two-dimensional arrays of picture elements or pixels correspond to the spatial resolution of a picture in displayable form. Reconstruction of a picture after its decompression typically results in storing its corresponding one or more two-dimensional arrays in a memory in STB 20 until the picture is displayed or until its information is no longer required for performing decompression and reconstruction of additional compressed pictures.

The characteristics of STB 20 may comprise the amount of resources it possesses or its capabilities to perform decompression for one or more of a plurality of digital video coding specifications (or video compression algorithms). For instance, a first STB 20 may possess limited amount of resources and be capable of decoding a first compressed video stream corresponding to a first instance of a first video program but incapable of decoding a second compressed video stream corresponding to a second instance of the first video program.

In one embodiment, the first compressed video stream requires less computational resources in performing video decompression on the first compressed video stream than on performing decompression on the second compressed video stream. The amount of resources required to decompress a video compressed according to a particular video coding specification may correspond to: an amount of memory, an amount of memory bus bandwidth (or memory bus access), a required memory speed, an amount or quantity of throughput or processing, a processor's speed or computational capability, a digital signal processor's speed or computational capability, a media processor's speed or computational capability, or a processor with the capability to perform one or more specific types of computations or instructions. As a non-limiting example, the amount of resources required to decompress a compressed video may correspond to STB 20 possessing capabilities to perform one or more real-time video processing operations on picture data.

In an alternate embodiment, the first compressed video stream corresponds to one compressed according to the syntax and semantics of a first digital video coding specification and the second compressed video stream corresponds to one compressed according to the syntax and semantics of a second digital video coding specification. For instance, the first video coding specification may correspond to ISO/IEC 13818-2:2000 and the second coding specification to ISO/IEC 14496-10 AVC.

A fifth set of factors influencing the perceived picture quality of video concerns characteristics of local loop 16. Loop characteristics are known a priori and convey the maximum bit-rate for real-time transmission of a video program to a subscriber. Furthermore, the loop characteristics may change depending on the number from a plurality of subscribers being serviced by a first local loop that are simultaneously requesting or viewing video programs. STB 20 has a unique identification that allows a message to be transmitted to VHO 30 to communicate information pertaining to the characteristics of STB 20, the characteristics of the first local loop 16 coupling STB 20 to the VHO 330, and the characteristics of the display device coupled to STB 20.

The perceived picture quality by the subscriber is dependent on the combined effect of the first, second, third, fourth, and fifth sets of factors on the video. In alternate embodiments, one or more of the sets of factors, or portions thereof, may not contribute to the perceived picture quality.

The novel methods and systems described herein control, manage and optimize the transmission of a video program in compressed form to STB 20 by minimizing the consumption of the transmission channel's capacity. Specifically, the real-time transmission of the compressed video program is managed by lowering the bit-rate of the compressed video program to a level that does not degrade the perceived picture quality of the video beyond from what is capable of being provided by the display device coupled to STB 20, local loop 16, and/or by the processing capabilities of STB 20. The objective of the invention is to tailor the transmission of a video program to STB 20 as an individualized transmission, not wasting bandwidth unnecessarily. The video program is transmitted real-time in a sufficiently low bit-rate that provides at least the best perceived picture quality being capable of being provided or resolved by the ensemble comprised by the display device coupled to STB 20, local loop 16 and STB 20. Accordingly, the best perceived picture quality being capable of being provided or resolved is determined at VHO 330 from information related to the characteristics of the display device, STB 20, and/or local loop 16. Information related to one or more of these three different characteristics are either known at central office 14, VHO 330, or VSO 320, ahead of time or transmitted in one or more messages from STB 20 to a central office 14, VHO 330, or VSO 320 to manage the bit-rate in delivery of video programs to STB 20.

In a first embodiment, according to the characteristic or set of characteristics of a first display device coupled to a first STB 20, a first instance of a first video program is transmitted to the first STB 20. The first instance of the first video program exhibits one or more compression characteristics corresponding to one or more characteristics of the first display device. In particular, the compression characteristics of the first instance of the first video program are such that the spatial picture resolution, picture rate, or picture scan format, or any combination thereof, are modified from their corresponding original form at the time the video was created or imaged, in order to reduce the amount of information that must be compressed and transmitted to STB 20. The result is that the first instance of the first video program exhibits an increased amount of compression, or, equivalently, a lower bit-rate in its real-time transmission. However, the amount of modification of one or more video parameters in a compressed video from their corresponding original values at the time the video was imaged is according to the perceived picture quality that is capable of being provided by the display device, which in turn is dependent on the display device's characteristics. As a non-limiting example, an HD video program that was originally imaged at a 1920×1080 picture resolution may be compressed as a first compressed video stream or first instance, in which each picture is first reduced to a lower spatial resolution (e.g., 1440×1080) using signal processing methods, filters, and/or sample rate converters, and a second compressed video stream or second instance is compressed in its original spatial resolution (1920×1080).

As a non-limiting example, a first display device's characteristics may exhibit a native display resolution of 1280×1024. Upon or prior to receiving a request for viewing an HD video program, information corresponding to the display device coupled to STB 20 is transmitted by the STB 20 to VSO 320 or VHO 330, as shown in FIG. 3. Responsive to receiving the information corresponding to the display device, one or more computing devices cause retrieval of the display device's characteristics as necessary, if not already contained in the transmitted information or message from STB 20. The transmission of the first video program is effected by transmitting an instance of the requested HD video program as a compressed video stream in which compressed pictures have a spatial resolution that is lower than 1920×1080, resulting in a lower bit-rate. However, in order to match the perceived image quality capable of being provided by the display device, the first instance of the first video program has a spatial resolution in compressed form that is equal to 1280×1024, or one from a plurality of predetermined spatial resolution larger than or equal to 1280×1024 but smaller than 1920×1080. Alternatively, one from a plurality of compressed versions or instances of the first video program, each exhibiting a respective set of compression characteristics that is different from the others, is determined a priori to be the best match for the first display device according to the first display device's characteristics. Accordingly, real-time transmission of the first video program to STB 20 is effected with a compressed version or instance that was determined a priori to possess the best set of compression characteristics to match the first display device's capabilities while simultaneously resulting in a lower bit-rate.

As another non-limiting example, a first display device's characteristics may display pictures in an interlaced format, often called an interlaced display. Upon or prior to receiving a request for viewing a first video program that was natively imaged as progressive pictures at frame rates equal to or superseding the field rate of the first display device. For instance, the first video program may be a natively imaged program of 1280×720 (or 1920×1080) spatial resolution and 60 frames per second, whereas the first display device outputs pictures as interlaced pictures (or fields) at 60 Hertz. Information corresponding to the first display device coupled to STB 20 is transmitted by the STB 20 to VHO 330 or VSO 320, as previously described. The transmission of the first video program is effected by transmitting an instance of the requested video program as a compressed video stream in which compressed pictures are indicated as interlaced and having a total number of picture elements that is half of the native format of the first video program. Consequently, the bit-rate is significantly reduced from the compressed version of the first video program containing all the pixels of the native pictures in progressive format. Alternatively, one from a plurality of compressed versions or instances of the first video program, each exhibiting a respective set of compression characteristics that is different from the others, is determined a priori to be the best match for the first display device according to the first display device's rendering of interlaced pictures. Accordingly, real-time transmission of the first video program to STB 20 is effected with a compressed version or instance that was determined a priori to possess a best format of interlaced compressed pictures that match the first display device's interlaced rendering capabilities while simultaneously resulting in a lower bit-rate.

In an alternate embodiment, a compressed version of the first video program is selected for transmission to STB 20 according to the first display device's characteristics and according to the characteristics of STB 20. For instance, if STB 20 is capable of receiving a compressed video stream corresponding to a second video specification that provides superior compression in comparison to a first video coding specification, the first video program is transmitted to STB 20 as a compressed version that matches the first display device's characteristics and according to the syntax and semantics of the second video specification. On the other hand, if STB 20 is capable of decompressing compressed video streams corresponding to the first video specification, the transmitted video stream is one that matches the first display device's characteristics and according to the syntax and semantics of the first video specification.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the first display device's characteristics, the characteristics of STB 20, and the inherent video characteristics of the first video program.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the first display device's characteristics and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the first display device's characteristics, the characteristics of STB 20, and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the first display device's characteristics, the characteristics of STB 20, the inherent video characteristics of the first video program, and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the first display device's characteristics, the inherent video characteristics of the first video program, and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the characteristics of STB 20 and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the characteristics of STB 20, the inherent video characteristics of the first video program, and the characteristics of local loop 16.

In yet another embodiment, a compressed version of the first video program is selected for transmission to STB 20 in accordance with the inherent video characteristics of the first video program and the characteristics of local loop 16.

In a second embodiment, a first display device is coupled to a first STB 20 and a second display device is coupled to a second STB 20 (not shown). The first STB 20 is coupled to a first loop 16 and second STB 20 is coupled to a second loop 16. A first request for the first video program (e.g., effected by a television channel change or as a movie purchase) is generated from the first STB 20 and a second request for the first video program is generated from the second STB 20. Responsive to the first request for the first video program, a first instance of the first video program is transmitted to the first STB 20 and responsive to the second request for the first video program, a second instance of the first video program is transmitted to the second STB 20, the compression characteristics of the first instance of the first video program in compressed form being different than the compression characteristics of the second instance of the first video program in compressed form. The compression characteristics of the first instance of the first video program in compressed form are determined according to information transmitted from the first STB 20, or known ahead of time, and according to one or more of the first display device's characteristics, the characteristics of the first local loop 16, the characteristics of the first STB 20, and the inherent video characteristics of the first video program. The compression characteristics of the second instance of the first video program in compressed form are determined according to information transmitted from the second STB 20 and according to one or more of the second display device's characteristics, the characteristics of the second local loop, the characteristics of the second STB 20, and the inherent video characteristics of the first video program.

In a third embodiment, the first and second instance of the first video program in compressed form differ only when transmitting the first video program, or any portions thereof, simultaneously in real-time to the first STB 20 and the second STB 20.

In a fourth embodiment, the first and second instance of the first video program in compressed form do not differ when transmitting the first video program, or any portions thereof, simultaneously in real-time to the first STB 20 and the second STB 20. The compression characteristics of the common instance of the first video program in compressed form are determined according to information transmitted from the first STB 20 and the second STB 20 and according to one or more of the first display device's characteristics, the characteristics of the first STB 20, the second display device's characteristics, the characteristics of the second STB 20, and the inherent video characteristics of the first video program.

In a fifth embodiment, a first display device coupled to a first STB 20 possesses capabilities for displaying pictures only in a progressive scan format and the first video program possesses a native interlaced picture scan format. The first instance of the first video program in compressed form is such that the native interlaced pictures are first deinterlaced prior to compression and compressed as progressive pictures according to one from possibly several video coding specifications. The de-interlaced method performed in the interlaced pictures is performed a priori to match one or more compression versions or instances of the first program to display devices that render in a native progressive picture format. Given the low cost nature of consumer electronic devices like televisions and display devices, their built-in de-interlacing mechanisms are often compromised. By employing a superior de-interlacing mechanism, one that is not cost nor resources constrained, compression of pictures is effected on the deinterlaced version of the interlaced pictures.

In a sixth embodiment, the first STB 16 and the second STB 16 are coupled to the first local loop 16. In accordance to the characteristics of the first local loop 16, the first instance of the first video program in compressed form is transmitted to the first STB 20 as a third instance of the first video program when the first video program, or any portions thereof, is transmitted in real-time to the first STB 20 simultaneously with the transmission of any video program in compressed form to the second STB 20. The bit-rate and compression characteristics of the third instance of the first video program in compressed form differ from the bit-rate and compression characteristics of the first instance of the first video program in compressed form. The first instance of the first video program in compressed form is employed for real-time transmission to the first STB 20 only when the first video program, or parts thereof, is not being transmitted in real-time to the first STB 20 simultaneously with the transmission of any video program in compressed form to the second STB 20.

As a non-limiting example of how the display characteristics affect perceived picture quality, as the native display resolution and/or the display device's physical screen dimension decreases, the video resolution required to maintain constant video quality as perceived by the subscriber is also reduced. Therefore, the digital data rate to maintain a perception of a video picture quality that is consistent with a lower picture quality induced by the display device coupled to STB 20 is controlled according to the display device's characteristics. A lower bit rate for a video program is thus attainable by transmitting a video program to STB 20 at a decreased bit-rate, for instance, obtained by encoding the picture at a lower spatial resolution or frame rate that is consistent with the particular display device's characteristics. The bit-rate of a video program decreases as the television's picture quality capability decreases. This relationship applies for both SD and HD video.

Some STBs, such as Scientific-Atlanta's HD set-tops, query television display attributes. Information relating to the type of display and resolution of the display are stored in the STB connected to the television. At the time of the installation of the STB, the type of display, such as SD, HD, or other, one or more display characteristics and the size of the display can be required to be entered into the STB. As a non-limiting example, a display characteristic can be a display's manufacturer, display model number, manufacturer's product serial number, or product series. The type of display can also be entered, being for example a plasma, CRT, LCD, LCos, DLP, front projection, rear projection, or other, or any combination of theses. FIG. 2 illustrates a screen-shot of one example of a graphical user interface screen depicting the type of television as a selectable item as part of the discovery setup of the STB such as the discovery system and method described in U.S. patent application Ser. No. 10/761,777, titled “Interactive Discovery of Display Device Characteristics”, filed Jan. 21, 2004, which is incorporated herein by reference. In one embodiment, buttons on the remote control can be used to highlight and select whether the television is SD or HD. Other attributes which may be queried may include the television's model number or aspect ratio. This information can be used to determine display resolution. Alternatively, the display attributes or characteristics can be queried directly from the STB. With the appropriate information stored in each STB, an identifying tag related to the display screen size can be used each time a request is made to provide programming.

However, the required digital data rate to maintain a perception of constant video picture quality by the subscriber is also dependent on the type of content received at the television. For example, sports events require a higher digital data rate than do movies because of differences in the amount of motion and detail between the two types of content. News programs have lower detail and motion than sports events and, therefore, allow lower digital data rates for video than for sports events in order to have similar perception of video picture quality. One embodiment which may be utilized to ascertain the type of content currently being viewed is to utilize metadata associated with the content that was created for distinguishing types of content. This metadata may be manually coded and associated with each particular program instance by the local operator or by the programmer.

FIG. 3 illustrates one embodiment of the present invention for implementing individualized link bandwidth allocation. First, the STB 20 initiates the discovery process to provide the display attributes of the display 310 to a video serving office (VSO) 320 of the central office 14 that typically includes video transport equipment. In particular, the monitor or television type as well as the model number could be provided as shown on branch 322. A video hub office (VHO) 330, typically separate from the central office 14, includes a database 340 which receives the television type and model number as input. Alternatively, the identifying tag related to the display screen size and one or more display characteristics of a particular link, stored in database 340 can be used each time a request is made to provide programming. Also, the metadata corresponding with a requested program instance may also be forwarded to the VSO 320 and VHO 330. From the database 340, the link bandwidth for the specific display 310 and/or the currently viewed program instance is configured as shown in block 350. Branch 360 depicts a video/VoIP/data link back to the STB 20 which is tailored to the display 310. Because a link is tailored to a display associated with each STB, a particular program instance may be viewed on different size displays at different rates while maintaining a constant video quality perception.

Recently new functionality has been added to conventional STTs—namely the ability to record an incoming video stream in digitized form onto a mass storage device, such as a hard disk drive, and play back that recorded video as desired by the user. This functionality has become known as a “digital video recorder” (DVR) or personal video recorder (PVR) and is viewed as a superior alternative to conventional video tape recorders for capture and subsequent playback of programming content. DVR settops allow a subscriber to view recorded video rather than view real-time video.

Simultaneous viewing and recording of the same video content may not happen frequently. If a DVR settop is being used, logic within the DVR settop can be used to determine if incoming video signals are being recorded, but not being simultaneously viewed. The data rate for storing material on a hard drive that is not simultaneously being viewed can be reduced below the real-time rate to reduce the traffic load to that subscriber. Although the time to complete storage of a given program will then be lengthened, the playback rate can be in real-time and the desired video resolution can be preserved. Therefore, non-real-time recording at lower data rates optimizes the overall data rate to each subscriber. DVR capability is another characteristic communicated by STB 20 to the VSO 320 or the VHO 330, for example, for attaining bandwidth management.

FIG. 4 illustrates a video system 400 capable of providing several discrete resolutions and data rates. The video system 400 includes video encoders 410 for receiving content 412. Encoders 410 convert the content 412 into multiple resolutions and bit rates. For example, as shown in FIG. 4, encoders 410 generate high resolution HD and enhanced-resolution HD streams 420 and 422, respectively, and medium resolution SD and low resolution SD streams 424 and 426, respectively. Video steams 420, 422, 424, and 426 are multicast across the broadband network 36 to the DSLAM 40. In one embodiment, the video system 400 may be configured to include digital content managers (DCMs) as part of the network 36. Each DCM is a specialized hardware based server for video content management that provides transrating for each DSL link which is the ability to dynamically recode the video to lower data rates. Each DCM also provides multiplexing and encryption for each DSL link.

The video system 400 also includes a system resource manager (SRM) 450 which may be implemented at a server of the VSO 320, VHO 330, or distributed in the network 36. The SRM 450 includes a map to identify each STB which is periodically updated so that the SRM 450 can track the bandwidth utilization on each of the DSL links to each of the subscribers. The SRM 450 allocates bandwidth preferably based on rules defined at a policy server at the central office 14 in order to prevent the DSL link from being oversubscribed. These rules are preferably based at least in part on allotted bandwidth per subscriber, display screen sizes, and content type. For example, the bandwidth per client may be managed as shown in FIG. 5.

The SRM 450 manages bandwidth allocation to a plurality of subscribers by utilizing opportunistic bandwidth to preclude oversubscription. For example, the SRM 450 tracks bandwidth utilization on multiple links to one or more subscribers and selects data rates on one or more of the links that optimizes the bandwidth to each of the subscribers. The bandwidth to a subscriber may be optimized by reducing a data rate on one or more links to that subscriber to allow the total bandwidth to that subscriber to be maintained at a desired amount or to allow an increased data rate to one or more other links to that subscriber. In another embodiment, the SRM 450 may detect that packets are being dropped to one or more subscribers along one or more links. In such case, the SRM 450 may select a data rate to meet the available bandwidth to the subscriber. For example, the SRM 450 may select a reduced data rate along the one link having the dropped packets or alternatively select a reduced rate along another link to the same subscriber.

Also, in order to optimize bandwidth, when the STB 20 requests a video service, the display type of the display coupled to the STB 20 requesting service is reported by the STB 20 along its link, or retrieved from storage at the central office 14, along with the DSL link identification, to the SRM 450. Therefore, the SRM 450 selects the optimum data rate stream for that particular display type that meets the available bandwidth. Because a link may be tailored to a particular display associated with each STB, the data rate to the display may be reduced to permit a higher data rate along another link to the subscriber that meets available bandwidth to that subscriber. Also, because a non-real-time stream may be used to reduce the traffic load, another link may utilize a higher data rate that meets available bandwidth requirements.

Scheduled DVR recordings may use an elastic buffer in the network 36 and use opportunistic bandwidth. FIG. 6 illustrates one embodiment of a process 600 of the present invention for optimizing bandwidth utilization when a video session is initiated by a DVR capable device. The process 600 begins at decision block 610 where it is determined whether a particular stream is being watched live by the subscriber or if it is being recorded. If the stream is being watched live, the content is streamed according to rules based upon the screen size and/or the type of content as shown in process block 620. On the other hand, if the stream is being recorded, but not being simultaneously watched, then a non-real-time file transfer is implemented utilizing a buffer of X minutes, rather than real-time streaming as shown in process block 630. As shown in process block 640, if the stream is not being viewed, transfer of the file is continued using only available excess bandwidth in the transmission line. However, as shown in decision block 650, the process 600 determines whether there is a request for a higher priority session while non-real-time file transfer is being implemented. If a higher priority session is requested, such as real-time viewing of a different video signal in HD, the file transfer may be slowed as shown in process block 660. See U.S. patent application Ser. No. 09/590,521, titled Systems and Method for Adaptive Scheduling and Dynamic Bandwidth Resource Allocation Management in A Digital Broadband Delivery System, filed Jun. 9, 2000, which is incorporated herein by reference. After the file transfer has been slowed as a result of the request for the higher priority session, or if the higher priority session has not been requested at all, the process 600 would continue to decision block 670 to determine whether the subscriber, if viewing content from the buffer, has caught up with the recorded content from the buffer. If the subscriber has caught up, the YES branch is followed back to process block 620 where the content is streamed according to the screen sizes. On the other hand, if subscriber has not yet caught up with the content from the buffer, then the process follows the NO branch back to process block 640 where the transfer is continued using only available excess bandwidth.

The foregoing has broadly outlined some of the more pertinent aspects and features of the present invention. These should be construed to be merely illustrative of some of the more prominent features and applications of the invention. Other beneficial results can be obtained by applying the disclosed information in a different manner or by modifying the disclosed embodiments. Accordingly, other aspects and a more comprehensive understanding of the invention may be obtained by referring to the detailed description of the exemplary embodiments taken in conjunction with the accompanying drawings, in addition to the scope of the invention defined by the claims. 

1. In a resource manager, a method for managing bandwidth allocation to a plurality of subscribers utilizing opportunistic bandwidth, said method comprising the steps of: tracking a bandwidth utilization on multiple links; receiving a request for services along one of the links; and selecting a video data rate on the one of the links that meets available bandwidth.
 2. The method of claim 1, wherein the step of tracking comprises tracking the bandwidth utilization on the multiple links to a single subscriber and wherein the step of selecting comprises selecting the video data rate on the one of the links to the single subscriber that optimizes another video data rate on another one of the links to the one subscriber.
 3. The method of claim 1, wherein the step of selecting step comprises reducing the video data rate on one or more of the links to optimize video data rates to one or more of the other links.
 4. The method of claim 1, further comprising the step of allocating bandwidth based on rules defined at a server.
 5. The method of claim 1, wherein the step of selecting comprises selecting the video data rate based upon a display type that meets the available bandwidth.
 6. The method of claim 1, wherein the step of selecting comprises selecting a non-real-time video data rate to reduce traffic load.
 7. The method of claim 1, wherein the step of selecting comprises tailoring the video data rate to correspond to a display type.
 8. The method of claim 1, wherein the step of selecting comprises reducing the video data rate on one or more of the links to optimize video data rates to one or more of the other links.
 9. The method of claim 1, further comprising the step of utilizing a map to identify set-top boxes associated with each of the links.
 10. In a resource manager, a method for managing bandwidth allocation to a plurality of subscribers to preclude oversubscription, the method comprising the steps of: tracking a bandwidth utilization on multiple links; detecting packets being dropped on at least one of the links as a result of oversubscription; and selecting a video data rate on at least one the links to one of the subscribers to meet available bandwidth.
 11. The method of claim 10, wherein the step of selecting step comprises selecting a reduced video data rate on at least one of the links to optimize video data rates to one or more of the other links.
 12. The method of claim 10, wherein the step of selecting comprises selecting a reduced video data rate on at least one of the links to optimize video data rates to the at least one of the links.
 13. The method of claim 10, wherein the step of tracking comprises tracking the bandwidth utilization on the multiple links to a single subscriber and wherein the step of selecting comprises selecting the video data rate on the one of the links to the single subscriber that optimizes another video data rate on another one of the links to the one subscriber.
 14. A server device, comprising: a resource manager configured with a processor to track a bandwidth utilization on multiple links, receive a request for services along one of the links, and select a video data rate on the one of the links that meets available bandwidth.
 15. The server device of claim 14, wherein the resource manager is further configured to: detect packets being dropped on at least one of the links as a result of oversubscription; and select a video data rate on at least one the links to one of the subscribers to meet the available bandwidth.
 16. The server device of claim 14, wherein the resource manager is further configured to select a reduced video data rate on at least one of the links to optimize video data rates to one or more of the other links.
 17. The server device of claim 14, wherein the resource manager is further configured to allocate bandwidth based on rules defined at the server device.
 18. The server device of claim 14, wherein the resource manager is further configured to select the video data rate based upon a display type that meets the available bandwidth.
 19. The server device of claim 14, wherein the resource manager is further configured to select a non-real-time video data rate to reduce traffic load.
 20. The server device of claim 14, wherein the resource manager is further configured to utilize a map to identify set-top boxes associated with each of the links, wherein the resource manager is further configured to update the bandwidth utilization of the set-top boxes in the map periodically. 